/*
 * XML Type:  InvestmentOpenOrderList
 * Namespace: http://ofx.net/types/2003/04
 * Java type: net.ofx.types.x2003.x04.InvestmentOpenOrderList
 *
 * Automatically generated - do not modify.
 */
package net.ofx.types.x2003.x04;


/**
 * An XML InvestmentOpenOrderList(@http://ofx.net/types/2003/04).
 *
 * This is a complex type.
 */
public interface InvestmentOpenOrderList extends org.apache.xmlbeans.XmlObject
{
    public static final org.apache.xmlbeans.SchemaType type = (org.apache.xmlbeans.SchemaType)schema.system.s3A74FF4CC3627C5B0D40068015746F8A.TypeSystemHolder.typeSystem.resolveHandle("investmentopenorderlist0c65type");
    
    /**
     * Gets array of all "OOBUYDEBT" elements
     */
    net.ofx.types.x2003.x04.OpenOrderBuyDebt[] getOOBUYDEBTArray();
    
    /**
     * Gets ith "OOBUYDEBT" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyDebt getOOBUYDEBTArray(int i);
    
    /**
     * Returns number of "OOBUYDEBT" element
     */
    int sizeOfOOBUYDEBTArray();
    
    /**
     * Sets array of all "OOBUYDEBT" element
     */
    void setOOBUYDEBTArray(net.ofx.types.x2003.x04.OpenOrderBuyDebt[] oobuydebtArray);
    
    /**
     * Sets ith "OOBUYDEBT" element
     */
    void setOOBUYDEBTArray(int i, net.ofx.types.x2003.x04.OpenOrderBuyDebt oobuydebt);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "OOBUYDEBT" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyDebt insertNewOOBUYDEBT(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "OOBUYDEBT" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyDebt addNewOOBUYDEBT();
    
    /**
     * Removes the ith "OOBUYDEBT" element
     */
    void removeOOBUYDEBT(int i);
    
    /**
     * Gets array of all "OOBUYMF" elements
     */
    net.ofx.types.x2003.x04.OpenOrderBuyMutualFund[] getOOBUYMFArray();
    
    /**
     * Gets ith "OOBUYMF" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyMutualFund getOOBUYMFArray(int i);
    
    /**
     * Returns number of "OOBUYMF" element
     */
    int sizeOfOOBUYMFArray();
    
    /**
     * Sets array of all "OOBUYMF" element
     */
    void setOOBUYMFArray(net.ofx.types.x2003.x04.OpenOrderBuyMutualFund[] oobuymfArray);
    
    /**
     * Sets ith "OOBUYMF" element
     */
    void setOOBUYMFArray(int i, net.ofx.types.x2003.x04.OpenOrderBuyMutualFund oobuymf);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "OOBUYMF" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyMutualFund insertNewOOBUYMF(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "OOBUYMF" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyMutualFund addNewOOBUYMF();
    
    /**
     * Removes the ith "OOBUYMF" element
     */
    void removeOOBUYMF(int i);
    
    /**
     * Gets array of all "OOBUYOPT" elements
     */
    net.ofx.types.x2003.x04.OpenOrderBuyOption[] getOOBUYOPTArray();
    
    /**
     * Gets ith "OOBUYOPT" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyOption getOOBUYOPTArray(int i);
    
    /**
     * Returns number of "OOBUYOPT" element
     */
    int sizeOfOOBUYOPTArray();
    
    /**
     * Sets array of all "OOBUYOPT" element
     */
    void setOOBUYOPTArray(net.ofx.types.x2003.x04.OpenOrderBuyOption[] oobuyoptArray);
    
    /**
     * Sets ith "OOBUYOPT" element
     */
    void setOOBUYOPTArray(int i, net.ofx.types.x2003.x04.OpenOrderBuyOption oobuyopt);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "OOBUYOPT" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyOption insertNewOOBUYOPT(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "OOBUYOPT" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyOption addNewOOBUYOPT();
    
    /**
     * Removes the ith "OOBUYOPT" element
     */
    void removeOOBUYOPT(int i);
    
    /**
     * Gets array of all "OOBUYOTHER" elements
     */
    net.ofx.types.x2003.x04.OpenOrderBuyOther[] getOOBUYOTHERArray();
    
    /**
     * Gets ith "OOBUYOTHER" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyOther getOOBUYOTHERArray(int i);
    
    /**
     * Returns number of "OOBUYOTHER" element
     */
    int sizeOfOOBUYOTHERArray();
    
    /**
     * Sets array of all "OOBUYOTHER" element
     */
    void setOOBUYOTHERArray(net.ofx.types.x2003.x04.OpenOrderBuyOther[] oobuyotherArray);
    
    /**
     * Sets ith "OOBUYOTHER" element
     */
    void setOOBUYOTHERArray(int i, net.ofx.types.x2003.x04.OpenOrderBuyOther oobuyother);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "OOBUYOTHER" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyOther insertNewOOBUYOTHER(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "OOBUYOTHER" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyOther addNewOOBUYOTHER();
    
    /**
     * Removes the ith "OOBUYOTHER" element
     */
    void removeOOBUYOTHER(int i);
    
    /**
     * Gets array of all "OOBUYSTOCK" elements
     */
    net.ofx.types.x2003.x04.OpenOrderBuyStock[] getOOBUYSTOCKArray();
    
    /**
     * Gets ith "OOBUYSTOCK" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyStock getOOBUYSTOCKArray(int i);
    
    /**
     * Returns number of "OOBUYSTOCK" element
     */
    int sizeOfOOBUYSTOCKArray();
    
    /**
     * Sets array of all "OOBUYSTOCK" element
     */
    void setOOBUYSTOCKArray(net.ofx.types.x2003.x04.OpenOrderBuyStock[] oobuystockArray);
    
    /**
     * Sets ith "OOBUYSTOCK" element
     */
    void setOOBUYSTOCKArray(int i, net.ofx.types.x2003.x04.OpenOrderBuyStock oobuystock);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "OOBUYSTOCK" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyStock insertNewOOBUYSTOCK(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "OOBUYSTOCK" element
     */
    net.ofx.types.x2003.x04.OpenOrderBuyStock addNewOOBUYSTOCK();
    
    /**
     * Removes the ith "OOBUYSTOCK" element
     */
    void removeOOBUYSTOCK(int i);
    
    /**
     * Gets array of all "OOSELLDEBT" elements
     */
    net.ofx.types.x2003.x04.OpenOrderSellDebt[] getOOSELLDEBTArray();
    
    /**
     * Gets ith "OOSELLDEBT" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellDebt getOOSELLDEBTArray(int i);
    
    /**
     * Returns number of "OOSELLDEBT" element
     */
    int sizeOfOOSELLDEBTArray();
    
    /**
     * Sets array of all "OOSELLDEBT" element
     */
    void setOOSELLDEBTArray(net.ofx.types.x2003.x04.OpenOrderSellDebt[] ooselldebtArray);
    
    /**
     * Sets ith "OOSELLDEBT" element
     */
    void setOOSELLDEBTArray(int i, net.ofx.types.x2003.x04.OpenOrderSellDebt ooselldebt);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "OOSELLDEBT" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellDebt insertNewOOSELLDEBT(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "OOSELLDEBT" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellDebt addNewOOSELLDEBT();
    
    /**
     * Removes the ith "OOSELLDEBT" element
     */
    void removeOOSELLDEBT(int i);
    
    /**
     * Gets array of all "OOSELLMF" elements
     */
    net.ofx.types.x2003.x04.OpenOrderSellMutualFund[] getOOSELLMFArray();
    
    /**
     * Gets ith "OOSELLMF" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellMutualFund getOOSELLMFArray(int i);
    
    /**
     * Returns number of "OOSELLMF" element
     */
    int sizeOfOOSELLMFArray();
    
    /**
     * Sets array of all "OOSELLMF" element
     */
    void setOOSELLMFArray(net.ofx.types.x2003.x04.OpenOrderSellMutualFund[] oosellmfArray);
    
    /**
     * Sets ith "OOSELLMF" element
     */
    void setOOSELLMFArray(int i, net.ofx.types.x2003.x04.OpenOrderSellMutualFund oosellmf);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "OOSELLMF" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellMutualFund insertNewOOSELLMF(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "OOSELLMF" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellMutualFund addNewOOSELLMF();
    
    /**
     * Removes the ith "OOSELLMF" element
     */
    void removeOOSELLMF(int i);
    
    /**
     * Gets array of all "OOSELLOPT" elements
     */
    net.ofx.types.x2003.x04.OpenOrderSellOption[] getOOSELLOPTArray();
    
    /**
     * Gets ith "OOSELLOPT" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellOption getOOSELLOPTArray(int i);
    
    /**
     * Returns number of "OOSELLOPT" element
     */
    int sizeOfOOSELLOPTArray();
    
    /**
     * Sets array of all "OOSELLOPT" element
     */
    void setOOSELLOPTArray(net.ofx.types.x2003.x04.OpenOrderSellOption[] ooselloptArray);
    
    /**
     * Sets ith "OOSELLOPT" element
     */
    void setOOSELLOPTArray(int i, net.ofx.types.x2003.x04.OpenOrderSellOption oosellopt);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "OOSELLOPT" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellOption insertNewOOSELLOPT(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "OOSELLOPT" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellOption addNewOOSELLOPT();
    
    /**
     * Removes the ith "OOSELLOPT" element
     */
    void removeOOSELLOPT(int i);
    
    /**
     * Gets array of all "OOSELLOTHER" elements
     */
    net.ofx.types.x2003.x04.OpenOrderSellOther[] getOOSELLOTHERArray();
    
    /**
     * Gets ith "OOSELLOTHER" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellOther getOOSELLOTHERArray(int i);
    
    /**
     * Returns number of "OOSELLOTHER" element
     */
    int sizeOfOOSELLOTHERArray();
    
    /**
     * Sets array of all "OOSELLOTHER" element
     */
    void setOOSELLOTHERArray(net.ofx.types.x2003.x04.OpenOrderSellOther[] oosellotherArray);
    
    /**
     * Sets ith "OOSELLOTHER" element
     */
    void setOOSELLOTHERArray(int i, net.ofx.types.x2003.x04.OpenOrderSellOther oosellother);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "OOSELLOTHER" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellOther insertNewOOSELLOTHER(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "OOSELLOTHER" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellOther addNewOOSELLOTHER();
    
    /**
     * Removes the ith "OOSELLOTHER" element
     */
    void removeOOSELLOTHER(int i);
    
    /**
     * Gets array of all "OOSELLSTOCK" elements
     */
    net.ofx.types.x2003.x04.OpenOrderSellStock[] getOOSELLSTOCKArray();
    
    /**
     * Gets ith "OOSELLSTOCK" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellStock getOOSELLSTOCKArray(int i);
    
    /**
     * Returns number of "OOSELLSTOCK" element
     */
    int sizeOfOOSELLSTOCKArray();
    
    /**
     * Sets array of all "OOSELLSTOCK" element
     */
    void setOOSELLSTOCKArray(net.ofx.types.x2003.x04.OpenOrderSellStock[] oosellstockArray);
    
    /**
     * Sets ith "OOSELLSTOCK" element
     */
    void setOOSELLSTOCKArray(int i, net.ofx.types.x2003.x04.OpenOrderSellStock oosellstock);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "OOSELLSTOCK" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellStock insertNewOOSELLSTOCK(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "OOSELLSTOCK" element
     */
    net.ofx.types.x2003.x04.OpenOrderSellStock addNewOOSELLSTOCK();
    
    /**
     * Removes the ith "OOSELLSTOCK" element
     */
    void removeOOSELLSTOCK(int i);
    
    /**
     * Gets array of all "SWITCHMF" elements
     */
    net.ofx.types.x2003.x04.OpenOrderSwitchMutualFund[] getSWITCHMFArray();
    
    /**
     * Gets ith "SWITCHMF" element
     */
    net.ofx.types.x2003.x04.OpenOrderSwitchMutualFund getSWITCHMFArray(int i);
    
    /**
     * Returns number of "SWITCHMF" element
     */
    int sizeOfSWITCHMFArray();
    
    /**
     * Sets array of all "SWITCHMF" element
     */
    void setSWITCHMFArray(net.ofx.types.x2003.x04.OpenOrderSwitchMutualFund[] switchmfArray);
    
    /**
     * Sets ith "SWITCHMF" element
     */
    void setSWITCHMFArray(int i, net.ofx.types.x2003.x04.OpenOrderSwitchMutualFund switchmf);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "SWITCHMF" element
     */
    net.ofx.types.x2003.x04.OpenOrderSwitchMutualFund insertNewSWITCHMF(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "SWITCHMF" element
     */
    net.ofx.types.x2003.x04.OpenOrderSwitchMutualFund addNewSWITCHMF();
    
    /**
     * Removes the ith "SWITCHMF" element
     */
    void removeSWITCHMF(int i);
    
    /**
     * A factory class with static methods for creating instances
     * of this type.
     */
    
    public static final class Factory
    {
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList newInstance() {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance( type, null ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList newInstance(org.apache.xmlbeans.XmlOptions options) {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance( type, options ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(java.lang.String s) throws org.apache.xmlbeans.XmlException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( s, type, null ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(java.lang.String s, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( s, type, options ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(java.io.File f) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( f, type, null ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(java.io.File f, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( f, type, options ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(java.net.URL u) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( u, type, null ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(java.net.URL u, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( u, type, options ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(java.io.InputStream is) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( is, type, null ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(java.io.InputStream is, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( is, type, options ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(java.io.Reader r) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( r, type, null ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(java.io.Reader r, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( r, type, options ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(org.w3c.dom.Node node) throws org.apache.xmlbeans.XmlException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( node, type, null ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(org.w3c.dom.Node node, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( node, type, options ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( xis, type, null ); }
        
        public static net.ofx.types.x2003.x04.InvestmentOpenOrderList parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
          return (net.ofx.types.x2003.x04.InvestmentOpenOrderList) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( xis, type, options ); }
        
        public static org.apache.xmlbeans.xml.stream.XMLInputStream newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
          return org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newValidatingXMLInputStream( xis, type, null ); }
        
        public static org.apache.xmlbeans.xml.stream.XMLInputStream newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
          return org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newValidatingXMLInputStream( xis, type, options ); }
        
        private Factory() { } // No instance of this class allowed
    }
}
